#!/usr/bin/env node

const { execSync } = require('child_process')
const fs = require('fs-extra')
const path = require('path')

console.log('🚀 开始 Vite 构建...')

try {
  // 清理之前的构建目录
  const buildDir = path.resolve(__dirname, '../docs-vite')
  if (fs.existsSync(buildDir)) {
    fs.removeSync(buildDir)
    console.log('✅ 清理旧的构建目录')
  }

  // 执行 Vite 构建
  console.log('📦 执行 Vite 构建...')
  execSync('npm run build:vite', { stdio: 'inherit' })

  // 复制必要的静态资源
  console.log('📋 复制静态资源...')
  const publicDir = path.resolve(__dirname, '../public')
  const targetDir = path.resolve(__dirname, '../docs-vite')
  
  if (fs.existsSync(publicDir)) {
    fs.copySync(publicDir, targetDir, { overwrite: true })
  }

  // 复制 Monaco Editor 相关文件
  console.log('🔧 复制 Monaco Editor 文件...')
  const monacoSourceDir = path.resolve(__dirname, '../node_modules/monaco-editor/min')
  const monacoTargetDir = path.resolve(__dirname, '../docs-vite/monaco-editor')
  
  if (fs.existsSync(monacoSourceDir)) {
    fs.copySync(monacoSourceDir, monacoTargetDir, { overwrite: true })
  }

  console.log('✅ Vite 构建完成！')
  console.log(`📁 构建输出目录: ${targetDir}`)
  
} catch (error) {
  console.error('❌ Vite 构建失败:', error.message)
  process.exit(1)
} 